草庐IT

java - Maven 依赖顺序

全部标签

ruby - Ruby Gemspec 中的条件依赖

我正在构建一个需要安装jsongem才能运行的gem。哪个jsongem并不重要:json_pure、json-jruby或基于C的json。是否有在gemspec中定义它的好方法?Thisresponse建议为每个版本维护一个完全独立的gem,但似乎必须有更好的方法。有人有这方面的经验吗?我应该只使用spec.requirements吗?通知用户他/她需要jsongem的选项? 最佳答案 是的,我会在spec.requirements中建议一个简单的文本要求。我还建议在gem首次加载时进行某种加载链接:#ininit.rband/

ruby-on-rails - 在 Bundler 中,如何覆盖依赖项对其自身依赖项的版本要求?

我的应用程序有几个需求,使用edgeRails(3.1)可以帮助我更快地完成任务。问题是我依赖的其中一个gem还没有正式支持Rails3.1,它有一个“~>3.0.0”的railties依赖,这会造成依赖冲突,并且bundler无法解决我的依赖.我能否以某种方式在我的应用程序的Gemfile中覆盖该要求,或者这是我fork依赖项的唯一解决方法? 最佳答案 可悲的是,分支它是解开它的唯一方法。或者,更hacky,修改gem的/vendor本地安装。 关于ruby-on-rails-在Bun

ruby - gemspec 中的条件 ruby​​ gem 依赖项

我正在构建一个在迁移中使用外键的Rails引擎。add_foreign_key"theblog_content_nodes","theblog_content_statuses",column::content_status_id从4.2版本开始,rails本身就支持外键,但在我们为此使用foreignergem之前。如果我们尝试将foreigner与rails4.2及更新版本一起使用,我们会收到错误消息。因为我要从4.0.1开始支持Rails,所以我必须在我的gemspec中使用条件依赖。我找到了可能的解决方案here但我不知道如何在gemspec中检查rails版本。#sideki

c - Ruby 的最大函数顺序如何重复?

我一直在看maxmethod在Ruby的Enumerable混合(v2.4.1)。这是一个相当简单的方法,但是当存在重复项时它如何排序项目有点令人困惑。例如:x=[1,2,3,4,5,6,7,8,9]x.max{|a,b|a%2b%2}=>110.times{|y|px.max(y){|a,b|a%2b%2}}[][1][1,7]#whyis7thenextelementafter1?[3,1,5]#whynomore7?[7,3,1,5]#7isnowfirst[9,7,3,1,5][9,7,3,1,5,6][9,7,3,1,5,4,6][9,7,3,1,5,2,4,6][9,7,5

ruby-on-rails - 使用 whenever gem 安排顺序任务

我正在使用whenever为Rails应用程序安排任务。我有这样的任务:every24.hoursdocommand"do_this"rake"do_that"end我的观点是,当我将它写入我的crontab时,只要使用-w,我就会看到它生成两个同时运行的独立任务。问题是,两者在逻辑上都是一个序列,这意味着rake任务“do_that”应该在命令“do_this”已经成功运行时运行。我试图像命令“do_this”&&rake“do_that”一样联系两者,但我收到了语法错误。是否存在任何技巧可以在任何时候创建任务之间的这种依赖关系?crontab是同时、并行地执行作业,还是处理队列中同

ruby - 如何为 Ubuntu 打包 Ruby 应用程序,包括它的 gem 依赖项?

我有一个名为Maid的命令行实用程序我目前分发为aRubyGem.我还想将其作为.deb包分发tomakeiteasierforUbuntuuserstoinstall.现在,Ubuntu用户必须手动完成很多工作,尤其是对于不熟悉Ruby的人:sudoapt-getinstallrubysudoapt-getinstallrubygems#Makesure`ruby`and`gem`arein`$PATH`sudogeminstallmaidmaidversion#examplecommand理想情况下,我希望在全新的Ubuntu安装上安装一个命令:sudoapt-getinstall

ruby - ruby 中的 .each 迭代器是否保证每次都对相同的元素给出相同的顺序?

我正在用列表“a”做这样的事情:a.each_with_index|outer,i|a.each_with_index|inner,j|if(j>i)#dosomeoperationwithouterandinnerendendend如果迭代器不打算使用相同的顺序,这将不起作用。我不关心实际顺序是什么,我只需要两个.each_with_index迭代器使用相同的顺序。我假设它是一个数组的一个属性,它有一个固定的顺序,我只是偏执地认为迭代器不会使用那个顺序...... 最佳答案 这取决于您正在操作的特定Enumerable对象。例如,

ruby-on-rails - Node/NPM 依赖于 Ruby on Rails 引擎 gem Assets 管道

我正在构建一个打包在gem中的RubyonRails引擎,但无法弄清楚如何确保加载NPM依赖项。在常规Rails应用程序中,您可以安装NPM,然后使用npminstall命令将包放入node_modules基本目录中。然后在您的application.rb中使用以下行将node_modules添加到Assets管道:config.assets.paths但是,就我而言,我正在构建一个Rails引擎以作为gem加载。.gemspec文件允许您的gem将其他Ruby依赖项加载到主机应用程序中,但我不知道如何对Node依赖项执行相同的操作。在我的引擎中注意它需要某些NPM模块才能工作以便它们

Ruby - 使用 rake 以随机顺序执行测试

如何让我的Rails应用程序的测试以随机顺序执行?有没有使用rake的简单解决方案? 最佳答案 给你,在lib/tasks/tasks.rb中定义它namespace:testdonamespace:randomizedodesc"Randomizetests"Rake::TestTask.new(:all=>"db:test:prepare")do|t|t.libs运行:raketest:randomize:all请记住,在文件内测试仍将按照它们出现的顺序执行。我猜你可以猴子补丁测试单元来考虑到这一点。

ruby - 条件 gem 依赖项

是否可以在安装时有条件地设置对gem的依赖?这是我的情况,希望能澄清这个问题。我维护的一个gem依赖于jsongem。但是,我经常使用jruby,它有一个名为json-jruby的jsongem端口。要解决这个问题,我必须为每个依赖项构建两个单独的gem。我想构建一个gem,要么说它依赖于json或json-jruby,要么在安装时检查并使用正确的依赖项。有人对此有好的解决方案吗? 最佳答案 嗯,我相信一个人可以编写多个依赖项,因为我注意到gems似乎可以做到这一点。但我建议你不要这样做。无论您在此处插入的代码多么简单,当您考虑到用